5

Jeux de règles de balisage

L'un des aspects les plus difficiles de l'utilisation du langage XML est la conversion des contenus du format d'origine au format XML. Un document QuarkXPress Passport peut être organisé à l'aide de feuilles de style et autres conventions, mais comment traduire ce genre d'organisation en XML ?

Avenue.quark contribue à l'automatisation de ce processus. À l'aide d'un document QuarkXPress Passport et d'une DTD, avenue.quark permet de créer un « jeu de règles de balisage », qui peut organiser automatiquement des combinaisons de feuilles de style QuarkXPress Passport, de couleurs et de styles en types d'éléments dans une DTD.


Balisage selon des règles

Un jeu de règles de balisage permet de lier des feuilles de style QuarkXPress Passport ainsi que des styles de textes à des éléments dans une DTD. Vous pouvez utiliser un jeu de règles de balisage pour automatiser en partie le balisage d'un document QuarkXPress Passport.

Pour plus de détails sur la manière d'utiliser des jeux de règles de balisage dans le balisage selon des règles, reportez-vous au chapitre 6, « Balisage des contenus ».



Qu'est-ce qu'un jeu de règles de balisage ?

Un jeu de règles de balisage permet de préciser que, lors du balisage selon des règles, tout contenu qui répond à une série spécifique de critères doit être marqué d'un nom d'élément particulier. Par exemple, vous pourriez créer une règle de balisage selon laquelle tout paragraphe qui utilise la feuille de style de paragraphe « manchette » doit être balisé comme élément <manchette>.

Un jeu de règles de balisage est un jeu nommé de règles de balisage qui sont toutes basées sur une DTD unique. Chaque règle de balisage précise les feuilles de style, les couleurs et les styles de texte qui doivent être liés à l'élément correspondant. Par exemple, la règle de balisage illustrée ci-dessous indique que tout texte qui utilise la feuille de style « 01 Titre » doit être balisé avec un type d'élément <titre> :

Les jeux de règles de balisage permettent de contrôler l'application du balisage selon des règles.

Vous pourriez ajouter une règle selon laquelle le texte en italique dans les paragraphes utilisant la feuille de style « 01 Titre » doit être balisé au moyen de balises <accentuation>, comme suit :

Les jeux de règles de balisage permettent d'imbriquer des éléments les uns dans les autres.

Etant donné les deux règles de balisage précitées, un paragraphe qui utilise la feuille de style de paragraphe « 01 Titre » et contient du texte en italique pourrait être balisé de la manière suivante :

<titre>Ce que la femme de chambre a <accentuation>vraiment </accentuation>vu</titre>

Pour que le type d'élément soit utilisé, tous les critères de la zone Paramètres de la règle doivent être satisfaits. Par exemple, la règle de balisage qui suit signifie que seul le texte qui utilise la feuille de style de paragraphe « 02 Auteur » et est rouge et en gras doit être balisé avec le type d'élément <auteur> :

Tous les critères d'une règle de balisage doivent être satisfaits pour qu'une balise soit utilisée.

Si vous souhaitez lier plus d'un type de formatage à un type d'élément donné, il vous suffit de créer des règles supplémentaires pour ce type d'élément. Par exemple, supposons que vous avez deux feuilles de style différentes pour les noms ; une feuille de style pour le prénom dans une liste et une autre pour les autres noms de la liste. (Cette pratique est fréquente pour des raisons d'espacement.) Vous pourriez simplement créer deux règles de balisage pour le type d'élément <nom>, l'une qui lie la feuille de style « Prénom » à <nom> et l'autre qui lie la feuille de style « Autres noms » à <nom>. Avenue.quark baliserait dès lors comme éléments <nom> les paragraphes répondant aux critères de l'une ou l'autre règle.

Qui crée des jeux de règles de balisage ? Dans de nombreuses situations professionnelles, seul le personnel administratif devrait créer des jeux de règles de balisage.



Fonctionnement du balisage de textes selon des règles

Lorsque vous appliquez le balisage selon des règles à un bloc de texte, avenue.quark parcourt ce texte du début à la fin et tente de baliser le texte conformément à la DTD. À tout moment de la procédure, avenue.quark anticipe pour tenter de trouver du texte correspondant à une règle de la DTD.

Le texte qui ne peut pas être balisé selon aucune règle de balisage est ignoré.



Conflits entre règles de balisage

Admettons que vous avez créé un jeu de règles de balisage contenant deux règles. La première indique de baliser le texte qui utilise « Corps texte » comme élément <corps>. La seconde indique de baliser le texte qui utilise « Corps texte » comme élément <paragraphe>. Qu'advient-il si vous appliquez ce jeu de règles de balisage à un bloc contenant un paragraphe de texte utilisant la feuille de style « Corps texte » ?

Réponse : avenue.quark affichera une boîte de dialogue vous demandant quel type d'élément vous souhaitez utiliser. La boîte de dialogue Choisir règle/position s'affiche dès lors que deux règles ou plus peuvent s'appliquer au même texte.

Que faire si vous souhaitez qu'avenue.quark balise deux fois le même texte et place une copie du texte à la fois dans un élément <corps> et dans un élément <paragraphe>? Vous pourriez créer deux jeux de règles de balisage l'un disant de baliser « Corps texte » comme élément <corps> et l'autre disant de marquer « Corps texte » comme élément <paragraphe> et ensuite exécuter le balisage selon des règles deux fois sur le même texte, une fois par jeu de règles de balisage.


Boîte de dialogue Choisir règle/position


Utilisation des jeux de règles de balisage

Un jeu de règles de balisage vous permet de lier des feuilles de style QuarkXPress Passport, des couleurs et des styles de texte à des éléments dans une DTD. Vous pouvez utiliser un jeu de règles de balisage pour automatiser en partie le balisage d'un document QuarkXPress Passport.

Pour plus d'informations sur l'utilisation des jeux de règles de balisage dans le balisage selon des règles, reportez-vous au chapitre 6, « Balisage des contenus ».



Création d'un jeu de règles de balisage

Un jeu de règles de balisage permet de définir de quelle manière un texte doit être marqué lors du balisage selon des règles. Pour créer un jeu de règles de balisage, procédez comme suit :

1. Créez ou ouvrez le document XML pour lequel vous souhaitez créer un jeu de règles de balisage.


2. Créez ou ouvrez un document QuarkXPress Passport contenant toutes les feuilles de style et les couleurs que vous souhaitez utiliser dans le jeu de règles de balisage.


3. Choisissez Édition > Règles de balisage. La boîte de dialogue Règles de balisage s'affiche.


Créez un nouveau jeu de règles de balisage dans la boîte de dialogue Règles de balisage.

4. Cliquez sur le bouton Créer jeu pour créer un nouveau jeu de règles de balisage. La boîte de dialogue Modifier règles de balisage apparaît et l'élément-racine ainsi que le nom de fichier DOCTYPE sont indiqués dans la barre de titre.


La palette Modifier règles de balisage permet de créer et de modifier un jeu de règles de balisage.

5. Tapez un nom pour le jeu de règles de balisage dans le champ Nom.


6. Sélectionnez un type d'élément en gras dans la liste de gauche. (Si le nom d'un type d'élément n'est pas disponible, cela signifie que la DTD n'autorise pas son association à des règles.) Pour afficher tous les sous-éléments d'un élément contenant, cliquez sur l'icône (Mac OS) ou (Windows) à côté de cet élément. Pour afficher la suite de la DTD, faites défiler la liste.


7. Pour ajouter une règle au jeu de règles de balisage, cliquez sur Ajouter une règle. Une règle vierge est ajoutée dans la liste Règles.


8. Pour configurer la règle de balisage de sorte qu'elle balise automatiquement le texte utilisant une feuille de style donnée, cliquez sur Feuille de style, puis choisissez un nom de feuille de style dans le menu contextuel Feuille de style. Si vous souhaitez qu'une succession de paragraphes utilisant la feuille de style de paragraphe indiquée soient insérés dans des éléments séparés, cochez Nouvelle balise pour chaque paragraphe ; si vous souhaitez qu'une succession de paragraphes utilisant la feuille de style indiquée soient insérés dans un même élément, ne cochez pas cette case. Les feuilles de style affichées en italique ne sont pas présentes dans le document QuarkXPress Passport actif.


Pour que l'option Nouvelle balise pour chaque paragraphe fonctionne, la DTD doit pouvoir gérer des occurrences séquentielles multiples de l'élément sélectionné.


9. Pour configurer la règle de balisage de sorte qu'elle balise automatiquement le texte qui utilise une couleur donnée, cliquez sur Couleur, puis choisissez un nom de couleur dans le menu contextuel Couleur. Les noms de couleur affichés en italique ne sont pas présents dans le document QuarkXPress Passport actif.


Les jeux de règles de balisage ne contiennent que les noms des feuilles de style et des couleurs. Si vous modifiez le nom d'une feuille de style ou d'une couleur dans le document, vous devez également actualiser le jeu de règles de balisage.


10. Pour configurer la règle de balisage de sorte qu'elle balise automatiquement le texte utilisant une combinaison donnée de styles, cliquez sur Style, puis cliquez sur les icônes pour indiquer les styles à baliser. Une icône de style sur fond noir signifie que le texte doit utiliser ce style pour être balisé ; une icône de style sur fond blanc signifie que le texte utilisant ce style ne sera pas balisé ; et une icône de style sur fond gris signifie que ce style ne sera pas pris en considération lors du balisage selon des règles.


Rappelons que le texte ne sera pas balisé tant que vous ne lui appliquez pas le balisage selon des règles. Pour plus d'informations concernant le balisage selon des règles, reportez-vous au chapitre 6, « Balisage des contenus ».


11. Pour ajouter une règle au type d'élément sélectionné, cliquez sur Ajouter une règle, puis répéter les étapes 8 à 10. Pour baser une nouvelle règle sur une règle existante, sélectionnez la règle existante dans la liste Règles ; cliquez sur Dupliquer pour en faire une copie, puis reconfigurez-la.


12. Pour supprimer une règle relative au type d'élément sélectionné, sélectionnez la règle dans la liste Règles, puis cliquez sur Supprimer.


Les types d'éléments pour lesquels des règles ont été créées apparaissent en italique dans la liste DTD.


13. Pour enregistrer les modifications apportées au jeu de règles de balisage, cliquez sur OK.


14. Cliquez sur Enregistrer pour fermer la boîte de dialogue Règles de balisage.


Si un type d'élément apparaît plusieurs fois dans l'arbre de la DTD, la création d'une règle pour une occurrence entraîne l'application de cette règle à toutes les occurrences.


Et si vous souhaitez créer un jeu de règles de balisage comportant des règles pour des feuilles de style provenant de différents documents ? Il vous suffit de créer un document, de lui associer toutes les feuilles de style des différents documents (Fichier > Ajouter > onglet Feuilles de style), puis de créer vos propres règles de balisage.



Modification, duplication et suppression de jeux de règles de balisage

La boîte de dialogue Règles de balisage (menu Édition) permet de modifier, dupliquer et supprimer des jeux de règles de balisage. Il vous suffit de sélectionner un jeu de règles de balisage dans la liste et de cliquer sur l'un des boutons suivants :